
#ifndef _OneTimeLinearParticleEmitter_H_
#define _OneTimeLinearParticleEmitter_H_

#include "ParticleEmitter.h"

class OneTimeLinearParticleEmitter : public ParticleEmitter {
  public:
    OneTimeLinearParticleEmitter(unsigned num_particles_in_burst, // properties of the emitter
                                 Vector2D emitter_start_pos, Vector2D emitter_end_pos,
                                 Vector2D emit_velocity, 
                                 float emit_rand_min, float emit_rand_max,

                                  // properties of the particle being emitted
                                 float col_r, float col_g, float col_b,
                                 float life, float life_rand, 
                                 float size, float size_rand, 
                                 float life_decay, float life_decay_rand, 
                                 float size_decay, float size_decay_rand,
                                 std::string texture = "", bool flare_up=false);

    ~OneTimeLinearParticleEmitter();
    std::vector<Particle> emit(void);

  private:
    unsigned num_particles_in_burst;
    bool done_burst;

    Vector2D emitter_start_pos, emitter_end_pos;

};



#endif

